МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
КАФЕДРА ЕОМ
/
Звіт
по лабораторній роботі №1
(Робота з симулятором машини Ноймана. Дослідження виконання машинного коду в автоматичному режимі)
з курсу
“Архітектура комп’ютера”
Підготував: ст. гр. КІ- 32
Майстренко М.В.
Прийняла: Ногаль М.В.
Львів-2011
Мета роботи: опанувати роботу на симуляторі машини Ноймана, зрозуміти і дослідити принцип виконання програми машиною Ноймана.
Завдання: запустити симулятор, увести до нього коди машинних інструкцій і коди чисел, навчитися утворювати і змінювати ці коди, дослідити і пояснити принципи трактування машиною Ноймана бінарних кодів. Розробити тестову програму, завантажити програму і відповідні дані до симулятора, виконати програму в автоматичному режимі, проаналізувати і пояснити отримані результати.
Персональне завдання: Створити програму, яка реалізує обчислення виразу X * Y – 2.
Теоретичні відомості:
CISC – complex instruction set computing (обчислення зі складною системою машинних інструкцій). Аби дослідити дію машини Ноймана використовують симулятори цієї машини, що, в свою чергу, є готовими до використання комп’ютерними програмами. При роботі з такою програмою складається враження роботи з комп’ютером першої генерації, що приймає дані і подає результати і двійковій (бінарній) системі числення, має обмежений обсяг пам’яті, обмежене число регістрів і відсутню операційну систему. Коли в комп’ютері (в нас – в симуляторі комп’ютера) ОС нема, тоді кожну програму треба завершувати виконанням машинної інструкції СТОП. В автоматичному режимі одним натиском на клавішу комп’ютер змушують виконати уведену до нього програму - повністю, від першої до останньої машинної інструкції програми. Розглянемо конкретний симулятор машини Ноймана, якому автор надав назву «Кроха».
«Кроха» є DOS програмою, яку запускають у вікні DOS. Отже, миша з симулятором не працює так само, як і в ті давні часи, коли реалізували машину Ноймана. Треба користуватися курсором (рискою підкреслення) і клавішами пересування курсора. Але курсор діє лише у вікні пам’яті. Залишаються можливості керування симулятором натисканням вибраних клавіш апаратури. Таке керування є примітивним але таким, що дозволяє
правдиво і чітко зрозуміти, як працює комп’ютер Ноймана, як з ним колись працювали, а також які в нього є принципові недоліки. Наступний рисунок 1 містить копію вікна симулятора Кроха. Симулятор є DOS програмою, що викликається в режимі командного рядка.
/
Зліва розташоване вікно пам’яті. Тут позначені адреси в бінарному коді, від 00002 до 11112 (всього 16 комірок). Вмістиме кожної комірки – це 3+4+4+4=15 бітова структура, що може бути або бінарним кодом цілого чила, або бінарним кодом машинної команди (так званої інструкції). Отже маємо не зовсім звичний 15-бітовий комп’ютер, що не підтримує парадигму байта.
Формат машинної інструкції машини Ноймана
В комп’ютері використаний наступний класичний формат 3-адресної машинної інструкції:
/
/
Виконання роботи:
Програма, що реалізовує обчислення виразу X * Y – 2:
Адреса
Інструкція
Коментар до інструкції
КОП
Оп.1
Оп.2
Рез.
0000
101
0011
0100
0110
Інструкція множення. Операнд 1: Число 710 (знаходиться у комірці 00112), Операнд 2: Число 510 (знаходиться у комірці 01002). Результат запишеться у комірку 01102.
0001
011
0110
0101
0111
Інструкція віднімання. Операнд 1: Результат виконання минулої інструкції (комірка 01102) (у моєму випадку – число 3510). Операнд 2: Число 210, що знаходиться у комірці 01012. Результат запишеться у комірку 01112. Це буде кінцевий результ...